<?php

namespace app\common\service;

use app\common\service\Base;

class MaterialStockUse extends Base
{

	/**
	 * 获取占用/使用余料库存数
	 *
	 * @author KING
	 * @date 2020年3月26日
	 *
	 * @param integer $materialId
	 * @param integer $orderId
	 * @return boolean
	 */
	public function getApplyAndUsed($materialId, $orderId) {
		if (empty($materialId) || empty($orderId)) return ['apply'=>0,'used'=>0];
		$where = [
			['material_id', '=', $materialId],
			['order_id', '=', $orderId],
		];
        $have_metres= db('material_stock')->where([["cutting_time",'=',0],['material_id', '=', $materialId]])->sum('metre_left'); //公共库库存
		return ['apply' => db('material_stock_use')->where($where)->where('status', 1)->sum('metre'),
            'used' => db('material_stock_use')->where($where)->where('status', 2)->sum('metre'),'have_metres'=>$have_metres];
	}

	/**
	 * 获取占用数
	 *
	 * @author KING
	 * @date 2020年3月26日
	 *
	 * @param integer $materialStockId
	 * @param integer $orderId
	 */
	public function getApplyNum($materialStockId, $orderId) {
		if (empty($materialStockId) || empty($orderId)) return 0;
		$where = [
			['material_stock_id', '=', $materialStockId],
			['order_id', '=', $orderId],
			['status', '=', 1],
		];
		return db('material_stock_use')->where($where)->value('metre', 0);
	}

	/**
	 * 获取实际使用数
	 *
	 * @author KING
	 * @date 2020年3月26日
	 *
	 * @param integer $materialStockId
	 * @param integer $orderId
	 */
	public function getUsedNum($materialStockId, $orderId) {
		if (empty($materialStockId) || empty($orderId)) return 0;
		$where = [
			['material_stock_id', '=', $materialStockId],
			['order_id', '=', $orderId],
			['status', '=', 2],
		];
		return db('material_stock_use')->where($where)->sum('true_metre');
	}
}